مشخصات مقاله
-
3407
-
0.0
-
16446
-
0
-
0
بول (bool) در سی شارپ
وقتی توی برنامهنویسی با دادههایی سروکار دارید که فقط میتونن دو وضعیت مشخص داشته باشن، دادههای Boolean یا منطقی وارد ماجرا میشن. این نوع دادهها توی بخشهای مختلف برنامهنویسی C# کاربرد دارن و معمولاً برای مشخص کردن درست یا نادرست بودن یک وضعیت و تصمیمگیری در برنامه استفاده میشن.
آشنایی با متغیرهای Boolean یکی از مباحث پایهای در یادگیری C# محسوب میشه؛ چون در ادامهی مسیر برنامهنویسی بارها با شرطها، بررسی وضعیتها و تصمیمگیری بر اساس مقادیر true و false سروکار خواهید داشت. توی این بخش میخوایم با نحوه تعریف، مقداردهی، دریافت و استفاده از متغیرهای Boolean در C# آشنا بشیم.
یکی از انواع دادهای بسیار پرکاربرد در زبانهای برنامهنویسی، دادههای بولی یا منطقی هستن. این دادهها معمولاً فقط دو حالت درست و نادرست، یعنی true و false، دارن و برای ساختارهای تصمیمگیری یا مشخص کردن وضعیتهای مختلف در برنامه به کار میرن.
وقتی با کامپیوتر کار میکنید، ممکنه کاربر مقادیری رو وارد برنامه کنه. بعضی از این مقدارها معتبر هستن، اما بعضی دیگه ممکنه نیاز به اصلاح داشته باشن یا اصلاً توسط برنامه پذیرفته نشن. به همین دلیل، مقدارهای ورودی باید مرتب بررسی و اعتبارسنجی بشن. اعتبار یک مقدار هم با توجه به نوع دادهی اون مشخص میشه. مثلاً ممکنه یک شرط درست باشه یا یک عدد با عدد دیگهای برابر باشه. برای انجام این بررسیها، زبان C# مجموعهای از نشانهها و عملگرها رو در اختیار برنامهنویس قرار میده که به اونها عملگرهای Boolean گفته میشه.
تعریف متغیرهای Boolean
- Microsoft Visual Studio رو اجرا کنید.
- برای ایجاد یک برنامهی جدید، از منوی اصلی به مسیر File -> New Project... برید.
- از فهرست وسط، روی گزینهی Empty Project کلیک کنید.
- نام پروژه رو به NationalBank2 تغییر بدید.
- برای ایجاد فایل جدید، در پنجرهی Solution Explorer راستکلیک کنید و بعد NationalBank2 -> Add -> New Item... رو انتخاب کنید.
- از فهرست وسط، گزینهی Code File رو انتخاب کنید.
- نام فایل رو به Employee تغییر بدید.
- روی Add کلیک کنید.
- فایل Employee.cs رو به شکل زیر تغییر بدید.
public class Employee
{
public string EmployeeNumber;
public string FirstName;
public string LastName;
public double HourlySalary;
public Employee(string emplNbr = "00-000", string fName = "John",
string lName = "Doe", double salary = 0.00)
{
EmployeeNumber = emplNbr;
FirstName = fName;
LastName = lName;
HourlySalary = salary;
}
}
- برای ایجاد فایل جدید، در پنجرهی Solution Explorer راستکلیک کنید و بعد NationalBank2 -> Add -> New Item.... رو انتخاب کنید.
- دقت کنید که در فهرست وسط گزینهی Code File انتخاب شده باشه. نام فایل رو به Management تغییر بدید و کلید Enter رو بزنید.
- فایل رو به شکل زیر تغییر بدید.
using System;
public class Management
{
private static Employee HireEmployee()
{
Employee empl = new Employee();
Console.Title = "National Bank";
Console.WriteLine("=======================");
Console.WriteLine("==-= National Bank =-==");
Console.WriteLine("To hire a new employee, enter the following information");
Console.WriteLine("-----------------------");
Console.Write("Employee #: ");
empl.EmployeeNumber = Console.ReadLine();
Console.Write("First Name: ");
empl.FirstName = Console.ReadLine();
Console.Write("Last Name: ");
empl.LastName = Console.ReadLine();
Console.Write("Hourly Salary: ");
empl.HourlySalary = double.Parse(Console.ReadLine());
Console.WriteLine("=======================");
return empl;
}
private static void ShowEmployeeRecord(Employee empl)
{
Console.Title = "National Bank";
Console.WriteLine("=======================");
Console.WriteLine("==-= National Bank =-==");
Console.WriteLine(" Employee Record");
Console.WriteLine("-----------------------");
Console.WriteLine("Employee #: {0}", empl.EmployeeNumber);
Console.WriteLine("First Name: {0}", empl.FirstName);
Console.WriteLine("Last Name: {0}", empl.LastName);
Console.WriteLine("Hourly Salary: {0}", empl.HourlySalary);
Console.WriteLine("=======================");
}
public static int Main()
{
Employee clerk = null ;
clerk = HireEmployee();
Console.Clear();
ShowEmployeeRecord(clerk);
Console.ReadKey();
return 0;
}
}
- برای اجرای برنامه، از منوی اصلی به مسیر Debug -> Start Debugging برید.
- اطلاعات موردنیاز رو به شکل زیر وارد کنید.
- کلید Enter رو فشار بدید.
======================= ==-= National Bank =-== Employee Record ----------------------- Employee #: 88-602 First Name: Joan Last Name: Bergman Hourly Salary: 16.85 =======================
- حالا Enter رو بزنید تا پنجرهی DOS بسته بشه.
تعریف متغیر Boolean
متغیر Boolean متغیریه که مقدارش فقط میتونه یکی از دو حالت true یا false باشه. برای تعریف یک متغیر Boolean میتونید از کلمهی کلیدی bool یا در شرایط مناسب از var استفاده کنید. به مثال زیر توجه کنید.
using System;
public class Exercise
{
static int Main()
{
bool drinkingUnderAge;
return 0;
}
}
نوع دادهی Boolean بخشی از فضای نام System هست و میتونید از اون برای تعریف متغیرهای Boolean استفاده کنید. برای آشنایی بیشتر با مباحث پایهی C# و ادامه دادن مسیر یادگیری، میتونید از دوره آموزش C# هم استفاده کنید.
مثال:
using System;
public class Exercise
{
static int Main()
{
Boolean drinkingUnderAge;
return 0;
}
}
بعد از اینکه متغیر رو تعریف کردید، باید اون رو با مقدار true یا false مقداردهی اولیه کنید. در واقع، اگه متغیر رو با var تعریف کنید، لازمه همون موقع تعریف، مقدار اولیهی اون رو هم مشخص کنید. به مثال زیر توجه کنید.
using System;
public class Exercise
{
static int Main()
{
var drinkingUnderAge = true;
return 0;
}
}
برای نمایش مقدار یک متغیر Boolean در کنسول، کافیه نام اون رو داخل پرانتزهای متد Write() یا WriteLine() از کلاس Console قرار بدید. مثال زیر رو ببینید.
using System;
public class Exercise
{
static int Main()
{
var drinkingUnderAge = true;
Console.WriteLine("Drinking Under Age: {0}", drinkingUnderAge);
return 0;
}
}
نتیجه
Drinking Under Age: True Press any key to continue...هر وقت لازم باشه، میتونید مقدار یک متغیر Boolean رو با اختصاص دادن true یا false تغییر بدید.
مثال:
using System;
public class Exercise
{
static int Main()
{
var drinkingUnderAge = true;
Console.WriteLine("Drinking Under Age: {0}", drinkingUnderAge);
drinkingUnderAge = false;
Console.WriteLine("Drinking Under Age: {0}", drinkingUnderAge);
return 0;
}
}
نتیجه
Drinking Under Age: True Drinking Under Age: False Press any key to continue...
بازیابی مقدار متغیر Boolean
میتونید مقدار یک متغیر Boolean رو از کاربر دریافت کنید. در این حالت، کاربر باید یکی از مقدارهای True (یا true) یا False (یا false) رو وارد کنه. برای دریافت این مقدار هم میشه از متدهای Read() یا ReadLine() کلاس Console استفاده کرد.
مثال:
using System;
public class Exercise
{
static int Main()
{
var drivingUnderAge = false;
Console.WriteLine("Were you driving under age?");
Console.Write("If Yes, enter True. Otherwise enter False: ");
drivingUnderAge = bool.Parse(Console.ReadLine());
Console.WriteLine("\nWas Driving Under Age: {0}\n", drivingUnderAge);
return 0;
}
}
نتیجه
Were you driving under age? If Yes، enter True. Otherwise enter False: true Was Driving Under Age: True Press any key to continue...
ایجاد فیلد Boolean
مثل بقیهی انواع متغیرهایی که در مباحث قبلی باهاشون آشنا شدیم، میتونید یک متغیر Boolean رو به فیلد یک کلاس تبدیل کنید. این متغیر هم مثل هر نوع متغیر دیگهای با استفاده از کلمهی کلیدی bool یا نوع دادهی Boolean تعریف میشه.
مثال:
public class House
{
char typeOfHome;
int beds;
float baths;
byte stories;
bool hasCarGarage;
int yearBuilt;
double value;
}
وقتی شیئی رو که متغیر Boolean یکی از اعضای اون هست مقداردهی اولیه میکنید، کافیه مقدار true یا false رو به متغیر مربوط اختصاص بدید. به همین شکل، میتونید با دسترسی به این عضو Boolean مقدار اون رو دریافت یا بررسی کنید. چند نمونه از این حالت رو در ادامه میبینید.
using System;
public class House
{
public char typeOfHome;
public int beds;
public float baths;
public byte stories;
public bool hasCarGarage;
public int yearBuilt;
public double value;
}
public class Program
{
static int Main()
{
var Condominium = new
{
hasCarGarage = false,
yearBuilt = 2002,
baths = 1.5F,
stories = 18,
value = 155825,
beds = 2,
typeOfHome = 'C'
};
Console.WriteLine("=//= Altair Realtors =//=");
Console.WriteLine("=== Property Listing ===");
Console.WriteLine("Type of Home: {0}", Condominium.typeOfHome);
Console.WriteLine("Number of Bedrooms: {0}", Condominium.beds);
Console.WriteLine("Number of Bathrooms: {0}", Condominium.baths);
Console.WriteLine("Number of Stories: {0}", Condominium.stories);
Console.WriteLine("Year Built: {0}", Condominium.yearBuilt);
Console.WriteLine("Has Car Garage: {0}", Condominium.hasCarGarage);
Console.WriteLine("Monetary Value: {0}\n", Condominium.value);
return 0;
}
}
نتیجهی اجرای برنامه به شکل زیره.
=//= Altair Realtors =//= === Property Listing === Type of Home: C Number of Bedrooms: 2 Number of Bathrooms: 1.5 Number of Stories: 18 Year Built: 2002 Has Car Garage: Fals Monetary Value: 155825 Press any key to continue...
آرگومانهای Boolean
درست مثل پارامترهای انواع دیگه، میتونید یک آرگومان از نوع bool یا Boolean رو به متد ارسال کنید. چنین آرگومانی فقط میتونه یکی از دو مقدار true یا false رو داشته باشه.
اگه میخواید یادگیری Booleanها رو به عنوان بخشی از مسیر یادگیری C# ادامه بدید و مباحث این زبان رو منظمتر و کاربردیتر یاد بگیرید، میتونید در ادامه سراغ دوره آموزش C# برید و یادگیریتون رو ادامه بدید.
تعریف متغیرهای Boolean